package com.pubinfo.passbook.engine;

import com.pubinfo.passbook.common.model.dto.witeoff.MedicineOnJobOrRetireDTO;
import com.pubinfo.passbook.engine.result.MedicineComputeResult;
import lombok.NonNull;

import java.math.BigDecimal;

/**
 * @author zhouch
 * @date 2022/4/29 16:27
 */
public interface RuleEngineEntrance {
    MedicineComputeResult executeMedicineComputeChain(final MedicineOnJobOrRetireDTO data, Integer chainId);

    MedicineComputeResult executeMedicineComputeChain(
            @NonNull final MedicineOnJobOrRetireDTO data,
            @NonNull Integer chainId,
            @NonNull BigDecimal initVal);
}
